The claimed invention relates generally to the field of digital data storage and more particularly, but not by way of limitation, to an apparatus and method for performing real time signal analysis and control of a data storage device over a computer network, such as the Internet.
Block data storage devices store and/or retrieve digital data in the form of blocks, which are individually addressable by a host device. Exemplary block data storage devices include hard disc drives, optical disc recorders and players, and magnetic digital tape recorders and players.
Such devices typically comprise a hardware/firmware based interface circuit, a communication channel and a recordable medium. The interface circuit includes a buffer for the temporary storage of transferred data and a programmable controller that provides top level control of the device. The user memory space of the recording medium is divided into a number of addressable blocks which are assigned host-level addresses (sometimes referred to as logical block addresses or LBAs). Each LBA typically has a corresponding physical block address (PBA) used by servo control circuitry to align a data transducing head with the appropriate portion of the medium to access the desired LBA.
To write data to the medium, the host device issues a write command comprising the user data to be stored by the storage device along with a list of LBAs to which the user data are to be stored. The storage device temporarily stores the user data in the buffer, schedules movement of the data transducing head to the appropriate location(s) over the medium, and then uses write channel portions of the communication channel to apply the appropriate encoding and conditioning of the data to write the data to the selected LBAs.
To subsequently read the data from the storage device, the host device issues a read command identifying the LBAs from which data are to be retrieved. The storage device schedules movement of the data transducing head to the appropriate location(s) over the medium, and then uses read channel portions of the communication channel to decode readback data which are placed into the buffer for subsequent transfer back to the host device. Such host-device data transfers are typically accomplished through a host interface port configured in accordance with an industry standard protocol such as ATA, SCSI, etc.
The controller uses operational programming (xe2x80x9cplatform firmwarexe2x80x9d) to manage the overall operation of the device. The platform firmware is typically stored in an integrated circuit memory device accessible by the controller during operation. The memory device further typically stores diagnostic firmware comprising programming that allows a user to monitor the operation of the platform firmware and diagnose error conditions. The diagnostic firmware is often configured to be accessed though a separate communications (COM) port using a serial connection to the device.
In the past, diagnostic evaluation of a device (such as during design or manufacturing) has typically required connecting the device directly to a host computer and installing special communication software on the host computer that allows the user to access the COM port and execute the diagnostic firmware. A specially configured data acquisition device (such as a digital oscilloscope or analyzer) can be also directly connected to the device (such as through test pins) to access desired signal waveforms such as high frequency readback signals from a preamplifier circuit of the device as the drive is operated.
Limitations associated with this approach include the fact that in today""s environment device manufacturers can have manufacturing and design facilities scattered throughout the world. Thus, if the expertise required to diagnose a particular device condition is at a different location than the device, it is necessary to either ship the device to another location or require an engineer or other personnel to travel to the site at which the device is located in order to observe the operation of the device in the environment in which the error condition has occurred.
Similar concerns are also encountered when error conditions are exhibited with devices at customer sites. Field technical personnel are often required to visit the customer site and bring the necessary equipment to observe and evaluate the device, interrupting the customer""s operations and delaying the restoration of service to the customer.
As the time windows available to bring new generations of devices to market continue to decrease and as customer expectations for high device availability continue to increase, there is a continual need for improvements in the art to allow users to quickly and accurately diagnose error conditions associated with data storage devices.
In accordance with preferred embodiments, a method and apparatus are provided for remote data acquisition from a block data storage device such as a disc drive. The data storage device includes a data storage medium, a host interface port, a serial communication (COM) port and a programmable controller with associated platform firmware and associated diagnostic firmware.
A client computer and a server computer are connected to a computer network (such as the Internet), and the data storage device is connected to the server computer via the host interface port. A data acquisition device such as a disk drive analyzer having digital oscilloscope capabilities is connected to the server computer and the data storage device.
Requests from the client computer are transmitted via the network to result in a first command to the data storage device to execute the platform firmware and a second command to capture a waveform signal from the data storage device. The waveform signal is transmitted real time for display by the client computer. Preferably, the client computer operates using a Java compatible web browser and addresses the server computer using hypertext transfer protocol (http).
In a preferred embodiment, a test interface daughter board is connected to test nodes (pins) of the data storage device, to the server computer and to the data acquisition device. The board includes selection logic to allow the user of the client computer to automatically select the test node(s) from which the waveform signal is to be generated.
These and various other features and advantages that characterize the claimed invention will be apparent upon reading the following detailed description and upon review of the associated drawings.